﻿#include <stdio.h>
#include <string.h>
#include "klua/klua.h"
#include "klbbase/klb_base.h"
#include "klbapp/klb_app.h"
#include "pubfw.h"


/// @brief app 预加载
static int ipcapp_preload(klb_app_t* p_app)
{
    pubfw_register_appex_all(p_app);

    return 0;
}

/// @brief 提供的内置 Lua 库
static int ipclua_openlibs(lua_State* L)
{
    klua_loadlib_all(L);        // klb-lua 标准库

    pubfw_loadlib_all(L);       // pubfw 支持库

    return 0;
}


/// @brief main 入口
int main(int argc, char** argv)
{
    // 初始化
    klb_base_init(NULL);

    // 预加载
    {
        klb_app_push_preload(ipcapp_preload);
    }

    // main
    int ret = klb_app_main(argc, argv, ipclua_openlibs);


    // 退出
    klb_base_quit();
    return ret;
}

//end
